package com.guoxue.domain;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

/**
 * 由工具生成的java类,手工修改无效!
   * 
 */
@Entity
@Table(name = "iOSDeviceVo")
public class IOSDeviceVo {
	// /////////////////////////////////////////////////////////////////////////////
	// --->字段定义:
	// /////////////////////////////////////////////////////////////////////////////
	/**
	 * 关联用户id
	 */
	private int uid;
	/**
	 * 物品生成时间
	 */
	private String createTime;
	/**
	 * 设备标识号
	 */
	private String deviceToken;
	/**
	 * type(1.苹果 2.安卓)
	 */
	private int type = 0;
	/**
	 * 主键id
	 */
	@Id
	@GenericGenerator(name = "generator", strategy = "identity")
	@GeneratedValue(generator = "generator", strategy = GenerationType.IDENTITY)
	private int id;
	/**
	 * 记录状态,0表示正常,-0x10表示已删除
	 */
	private int sysflag = 0;
	// /////////////////////////////////////////////////////////////////////////////
	// --->getter and setter:
	// /////////////////////////////////////////////////////////////////////////////
	/**
	 * 用户id
	 */
	public int getUid() {
		return uid;
	}
	/**
	 * 用户id
	 */
	public void setUid(int uid) {
		this.uid = uid;
	}
	
	public String getDeviceToken() {
		return deviceToken;
	}
	public void setDeviceToken(String deviceToken) {
		this.deviceToken = deviceToken;
	}
	
	public int getType() {
		return type;
	}
	public void setType(int type) {
		this.type = type;
	}
	/**
	 * 生成时间
	 */
	public String getCreateTime() {
		return createTime;
	}
	/**
	 * 生成时间
	 */
	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}
	/**
	 *自增主键 
	 */
	public int getId() {
		return id;
	}
	/**
	 *自增主键 
	 */
	public void setId(int id) {
		this.id = id;
	}
	/**
	 *删除标识0为正常 
	 */
	public int getSysflag() {
		return sysflag;
	}
	/**
	 *删除标识0为正常 
	 */
	public void setSysflag(int sysflag) {
		this.sysflag = sysflag;
	}
	// /////////////////////////////////////////////////////////////////////////////
	// --->流读写方法和打印方法:
	// /////////////////////////////////////////////////////////////////////////////
	@Override
	public String toString() {
		final StringBuilder sb = new StringBuilder();
		final String info;

		sb.append(",uid=" + this.uid);
		sb.append(",createTime=" + this.createTime);
		sb.append(",id=" + this.id);
		sb.append(",deviceToken=" + this.deviceToken);
		sb.append(",sysflag=" + this.sysflag);
		sb.append(",type=" + this.type);
		info = sb.toString();
		return info;
	}
	// /////////////////////////////////////////////////////////////////////////////
	// --->clone and copy:
	// /////////////////////////////////////////////////////////////////////////////
	@Override
	public Object clone() throws CloneNotSupportedException {
		return (IOSDeviceVo) super.clone();
	}
	/**
	 * 令当前对象(this)成为指定对象(src)的拷贝
	 * 对简单数据类型的数组,进行深层复制
	 * 对dataMap数据,进行dataMap的整体复制
	 * @param src
	 */
	public void copyOf(IOSDeviceVo src){
		this.uid = src.uid;
		this.createTime = src.createTime;
		this.id = src.id;
		this.sysflag = src.sysflag;
		this.type = src.type;
		this.deviceToken = src.deviceToken;
	}}
